package com.smart.community.region.dto;

import lombok.Data;

import javax.validation.constraints.*;
import java.io.Serializable;

/**
 * 业主查询数据传输对象
 * 
 * @author Wu.Liang
 * @since 2025-08-20
 * @version 1.0.0
 */
@Data
public class OwnerQueryDTO implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    /**
     * 当前页码
     */
    @Min(value = 1, message = "当前页码不能小于1")
    private Integer current = 1;
    
    /**
     * 每页大小
     */
    @Min(value = 1, message = "每页大小不能小于1")
    @Max(value = 100, message = "每页大小不能超过100")
    private Integer size = 10;
    
    /**
     * 业主姓名
     */
    private String ownerName;
    
    /**
     * 身份证号
     */
    private String idCard;
    
    /**
     * 联系电话
     */
    private String phone;
    
    /**
     * 邮箱地址
     */
    private String email;
    
    /**
     * 性别：0-未知，1-男，2-女
     */
    private Integer gender;
    
    /**
     * 职业
     */
    private String occupation;
    
    /**
     * 工作单位
     */
    private String company;
    
    /**
     * 状态：0-禁用，1-启用
     */
    private Integer status;
    
    /**
     * 社区ID
     */
    private Long communityId;
    
    /**
     * 楼栋ID
     */
    private Long buildingId;
    
    /**
     * 单元ID
     */
    private Long unitId;
    
    /**
     * 房户ID
     */
    private Long householdId;
    
    /**
     * 关键词搜索
     */
    private String keyword;
    
    /**
     * 开始时间
     */
    private String startTime;
    
    /**
     * 结束时间
     */
    private String endTime;
    
    /**
     * 关联状态：0-未关联，1-已关联
     */
    private Integer associationStatus;
}
